home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / C / Applications / Python 1.3.3 / pbmplus / libtiff / tiffcomp.h < prev    next >
Text File  |  1995-05-28  |  3KB  |  112 lines

  1. /* $Header: /usr/people/sam/tiff/libtiff/RCS/tiffcomp.h,v 1.34 93/08/25 09:45:30 sam Exp $ */
  2.  
  3. /*
  4.  * Copyright (c) 1990, 1991, 1992 Sam Leffler
  5.  * Copyright (c) 1991, 1992 Silicon Graphics, Inc.
  6.  *
  7.  * Permission to use, copy, modify, distribute, and sell this software and 
  8.  * its documentation for any purpose is hereby granted without fee, provided
  9.  * that (i) the above copyright notices and this permission notice appear in
  10.  * all copies of the software and related documentation, and (ii) the names of
  11.  * Sam Leffler and Silicon Graphics may not be used in any advertising or
  12.  * publicity relating to the software without the specific, prior written
  13.  * permission of Sam Leffler and Silicon Graphics.
  14.  * 
  15.  * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, 
  16.  * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY 
  17.  * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  
  18.  * 
  19.  * IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
  20.  * ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
  21.  * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
  22.  * WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF 
  23.  * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 
  24.  * OF THIS SOFTWARE.
  25.  */
  26.  
  27. #ifndef _COMPAT_
  28. #define    _COMPAT_
  29. /*
  30.  * This file contains a hodgepodge of definitions and
  31.  * declarations that are needed to provide compatibility
  32.  * between the native system and the base implementation
  33.  * that the library assumes.
  34.  *
  35.  * NB: This file is a mess.
  36.  */
  37.  
  38. /*
  39.  * Setup basic type definitions and function declaratations.
  40.  */
  41. #if defined(THINK_C) || defined(__MWERKS__)
  42. #include <unix.h>
  43. #include <math.h>
  44. #endif
  45. #include <stdio.h>
  46. #if defined(applec) || defined(__MWERKS__)
  47. #include <types.h>
  48. #else
  49. #ifndef THINK_C
  50. #include <sys/types.h>
  51. #endif
  52. #endif
  53. #ifdef VMS
  54. #include <file.h>
  55. #include <unixio.h>
  56. #else
  57. #ifndef __MWERKS__
  58. #include <fcntl.h>
  59. #endif /* MWERKS */
  60. #endif
  61. #if defined(THINK_C) || defined(applec) || defined(__MWERKS__)
  62. #include <stdlib.h>
  63. #define    BSDTYPES
  64. #endif
  65.  
  66. /*
  67.  * Workarounds for BSD lseek definitions.
  68.  */
  69. #if defined(SYSV) || defined(VMS)
  70. #if defined(SYSV)
  71. #include <unistd.h>
  72. #endif
  73. #define    L_SET    SEEK_SET
  74. #define    L_INCR    SEEK_CUR
  75. #define    L_XTND    SEEK_END
  76. #endif /* defined(SYSV) || defined(VMS) */
  77. #ifndef L_SET
  78. #define L_SET    0
  79. #define L_INCR    1
  80. #define L_XTND    2
  81. #endif
  82.  
  83. /*
  84.  * The library uses memset, memcpy, and memcmp.
  85.  * ANSI C and System V define these in string.h.
  86.  */
  87. #include <string.h>
  88.  
  89. /*
  90.  * The BSD typedefs are used throughout the library.
  91.  * If your system doesn't have them in <sys/types.h>,
  92.  * then define BSDTYPES in your Makefile.
  93.  */
  94. #ifdef BSDTYPES
  95. typedef    unsigned char u_char;
  96. typedef    unsigned short u_short;
  97. typedef    unsigned int u_int;
  98. typedef    unsigned long u_long;
  99. #endif
  100.  
  101. /*
  102.  * dblparam_t is the type that a double precision
  103.  * floating point value will have on the parameter
  104.  * stack (when coerced by the compiler).
  105.  */
  106. #ifdef applec
  107. typedef extended dblparam_t;
  108. #else
  109. typedef double dblparam_t;
  110. #endif
  111. #endif /* _COMPAT_ */
  112.